package com.lrs.java.designPattern.structural.decorator.demo;

public class Client {

	public static void main(String[] args) {

		/*
		 * 我们再举个生活中的例子，
		 * 俗话说“人在衣着马在鞍”，把这就话用装饰者模式的语境翻译一下，
		 * “人通过漂亮的衣服装饰后，男人变帅了，女人变漂亮了；”。
		 * 
		 * 对应上面的类图，这里男人女人对应于ConcreteComponent,而漂亮衣服则对应于ConcreteDecorator；
		 * 换个角度来说，人和漂亮衣服组合在一起【HAS A】，
		 * 有了帅哥或美女，但是他们还是人【ISA】，还要做人该做的事情，
		 * 但是可能会对异性更有吸引力了(扩展功能)！
		 */
		
		Person zs = new ShoesDecorator(new ClothesDecorator(new Male()));
		zs.makeup();
		
	}
}
